/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAO;

import Classes.Salle;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;

/**
 *
 * @author guig
 */
public class SalleDAO extends DAO<Salle>{
    
    public SalleDAO(Connection conn) {
        super(conn);
    }
    
    /**
     * La fonction prend en paramètre un id de salle et recherche dans la base les informations correspondante à l'id.
     * @param id
     * @return object<salle>
     */
    public Salle findById(int id) {
        Salle c = null;
            
            try {
			String query = "SELECT * FROM Salle WHERE idS = '"+id+"'";
			ResultSet result = state.executeQuery(query);
                        while (result.next()) {
                            c = new Salle(result.getInt("idS"), result.getString("nomS"));
                        }    
                        
		} 
		catch (SQLException e) {
			System.out.println("[Debug] Problème query : SalleDAO - findById()");
			e.printStackTrace();
                       
		}
            return c;
		
	
    }
    
    /*
     * La fonction recherche toutes les salles de la base de données et construit une Map d'objet Salle
     * 
     * @return Map <Integer, Salle>
     */
    public Map <Integer, Salle> findAll() {
             Map<Integer,Salle>listeSalle = new HashMap();
             try {
                String query = "SELECT * FROM Salle";
                ResultSet result2 = state.executeQuery(query);
                while (result2.next()) {
                     listeSalle.put(result2.getInt("idS"), new Salle(result2.getInt("idS"), result2.getString("nomS")));   
                }  
                return listeSalle;
                       
                        
		} 
		catch (SQLException exc) {
			System.out.println("[Debug] Problème query : SalleDAO - findAll()");
			exc.printStackTrace();
                       
		}
		return null;
        }
}
